home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_200 / 285_02 / makefile < prev    next >
Makefile  |  1990-07-08  |  4KB  |  86 lines

  1. ############################################################################
  2. #                                                                          #
  3. #   BISON 'make' file for Kneller's NDMAKE v4.5                            #
  4. #                                                                          #
  5. #       Microsoft C v5.1 Large model compiler                              #
  6. # ------------------------------------------------------------------------ #
  7. # TMP:              ndmake variable for it's temporary files               #
  8. # NAME:             name of the final executable file                      #
  9. # MODEL:            large model                                            #
  10. # INCLUDE:          compiler's '.h' file subdirectory                      #
  11. # HEADERS:          all necessary '.h' subdirectories                      #
  12. # ERRLVL:           level of error/warning reportage                       #
  13. # ODR:              destination directory for compiled object files        #
  14. # BIN:              compiler directive for object file location            #
  15. # COMP:             essential compiler command                             #
  16. # LINKF:            linker directives                                      #
  17. # LIBS:             additional object libraries                            #
  18. # ------------------------------------------------------------------------ #
  19. TMP     = D:
  20. NAME    = bison
  21. MODEL   = -AL
  22. INCLUDE = \M51\INCLUDE
  23. HEADERS = -I. -I$(INCLUDE)
  24. ERRLVL  = -DLINT_ARGS -W3
  25. ODR     = OBJ
  26. BIN     = -Fo$(ODR)
  27. COMP    = cl -c $(BIN)\ $(MODEL) $(ERRLVL) $(HEADERS)
  28.  
  29. LDFLAG  = /exepack /NOI /STACK:0x7fff
  30. LIBS    =
  31.  
  32. #   assorted predefined compilation macros
  33. #
  34. #------------------------------ optimize code, remove stack checking
  35. M5CC    = $(COMP) -Ox -Gs
  36.  
  37. #------------------------------ disable optimizer, insert DEBUGging hooks
  38. M5DC    = $(COMP) -Zi -Od
  39.  
  40. #------------------------------ do syntax check only
  41. M5SC    = $(COMP) -Zs
  42.  
  43. #------------------------------ generate function prototypes
  44. M5GC    = $(COMP) -Zg
  45.  
  46. CC      = $(M5CC)
  47.  
  48. #   fundamental compilation rule (lacking a rules file MAKE.INI)
  49. .c.obj:
  50.         $(CC) $< ;
  51.  
  52. OBJECTS = \
  53.         $(ODR)\LR0.obj  $(ODR)\allocate.obj  $(ODR)\closure.obj \
  54.         $(ODR)\conflict.obj  $(ODR)\derives.obj  $(ODR)\files.obj \
  55.         $(ODR)\getargs.obj  $(ODR)\getopt.obj  $(ODR)\gram.obj \
  56.         $(ODR)\lalr.obj  $(ODR)\lex.obj  $(ODR)\main.obj \
  57.         $(ODR)\nullable.obj  $(ODR)\output.obj  $(ODR)\print.obj \
  58.         $(ODR)\reader.obj  $(ODR)\symtab.obj   $(ODR)\warshall.obj
  59.  
  60. bison.exe:      $(OBJECTS)
  61.        link $(OBJECTS),$(NAME),$(NAME),$(LIBS) $(LDFLAG) ;
  62.  
  63. #------------------------------ object file dependencies
  64. $(ODR)\allocate.obj:    allocate.h
  65. $(ODR)\closure.obj:     machine.h new.h gram.h closure.h warshall.h
  66. $(ODR)\conflict.obj:    machine.h new.h files.h gram.h state.h conflict.h
  67. $(ODR)\derives.obj:     new.h types.h gram.h derives.h
  68. $(ODR)\files.obj:       files.h new.h gram.h
  69. $(ODR)\getargs.obj:     files.h bison.h getopt.h getargs.h
  70. $(ODR)\getopt.obj:  getopt.h
  71. $(ODR)\lalr.obj:        machine.h types.h state.h new.h gram.h lalr.h bison.h
  72. $(ODR)\lex.obj:         files.h symtab.h lex.h bison.h
  73. $(ODR)\lr0.obj:         machine.h new.h gram.h state.h bison.h closure.h lr0.h
  74. $(ODR)\main.obj:        machine.h getargs.h files.h reader.h nullable.h lalr.h \
  75.                 lr0.h print.h conflict.h derives.h output.h bison.h
  76. $(ODR)\nullable.obj:    types.h gram.h new.h nullable.h
  77. $(ODR)\output.obj:  machine.h new.h files.h gram.h \
  78.                 state.h bison.h output.h bison.h
  79. $(ODR)\print.obj:       machine.h new.h files.h gram.h state.h \
  80.                 conflict.h print.h
  81. $(ODR)\reader.obj:  files.h new.h symtab.h lex.h gram.h output.h \
  82.                 reader.h bison.h
  83. $(ODR)\symtab.obj:  new.h gram.h symtab.h
  84. $(ODR)\warshall.obj:    machine.h warshall.h
  85.  
  86.